最近在做一个spark项目,顺便分享一下我的Scala入门过程。这一系列文章假定读者有一定的java或者其他面向对象编程语言基础。本文主要简单介绍文件的操作。
按惯例先上代码
1 | val file = Source.fromFile("/Users/xiejing/Desktop/javascript") |
scala.io.Source.fromFile读取文件, getline获得一个iterator,遍历获取每一行,比Java方便多了。但这里有个问题,由于getline获得的是iterator,一旦你使用它完成遍历,iterator就失效了,所以如果需要反复的遍历文件,推荐Source.fromFile(…).getLines.toList,将文件内容转化为List,可以反复遍历,但代价是内存的消耗。
我们也可以用Source.fromURL来读取网络文件。
由于Scala运行在JVM上,因此可以无障碍的使用Java的类库,所以你可以使用java.io这个库来读取文件。